<?php

namespace Common\Model;

use Core\Model;

class Orders extends Model
{

    /**
     * 
     * @Primary
     * @Column(type="integer", nullable=false, column="id")
     */
    public $id;

    /**
     * 
     * @Column(type="string", size="60", nullable=true, column="order_no")
     */
    public $order_no;

    /**
     * 
     * @Column(type="integer", size="16", nullable=true, column="main_id")
     */
    public $main_id;

    /**
     * 
     * @Column(type="integer", size="16", nullable=true, column="source_id")
     */
    public $source_id;

    /**
     * 
     * @Column(type="string", size="120", nullable=true, column="payment_id")
     */
    public $payment_id;

    /**
     * 
     * @Column(type="string", size="32", nullable=true, column="payment_channel")
     */
    public $payment_channel;

    /**
     * 
     * @Column(type="string", nullable=true, column="pay_date")
     */
    public $pay_date;

    /**
     * 
     * @Column(type="string", nullable=true, column="create_time")
     */
    public $create_time;

    /**
     * 
     * @Column(type="string", size="32", nullable=true, column="track_number")
     */
    public $track_number;

    /**
     * 
     * @Column(type="string", size="32", nullable=true, column="web_site")
     */
    public $web_site;

    /**
     * 
     * @Column(type="string", size="120", nullable=true, column="consignee_firstname")
     */
    public $consignee_firstname;

    /**
     * 
     * @Column(type="string", size="120", nullable=true, column="consignee_lastname")
     */
    public $consignee_lastname;

    /**
     * 
     * @Column(type="string", size="120", nullable=true, column="consignee_email")
     */
    public $consignee_email;

    /**
     * 
     * @Column(type="string", size="120", nullable=true, column="consignee_coutry")
     */
    public $consignee_coutry;

    /**
     * 
     * @Column(type="string", size="120", nullable=true, column="consignee_state")
     */
    public $consignee_state;

    /**
     * 
     * @Column(type="string", size="120", nullable=true, column="consignee_city")
     */
    public $consignee_city;

    /**
     * 
     * @Column(type="string", size="120", nullable=true, column="consignee_zip")
     */
    public $consignee_zip;

    /**
     * 
     * @Column(type="string", size="255", nullable=true, column="consignee_address")
     */
    public $consignee_address;

    /**
     * 
     * @Column(type="string", nullable=true, column="audit_time")
     */
    public $audit_time;

    /**
     * 
     * @Column(type="string", nullable=true, column="shipping_time")
     */
    public $shipping_time;

    /**
     * 
     * @Column(type="string", size="32", nullable=true, column="express_type")
     */
    public $express_type;

    /**
     * 
     * @Column(type="double", size="8", nullable=true, column="express_weight")
     */
    public $express_weight;

    /**
     * 
     * @Column(type="string", size="32", nullable=true, column="express_id")
     */
    public $express_id;

    /**
     * 
     * @Column(type="string", size="32", nullable=true, column="express_unit")
     */
    public $express_unit;

    /**
     * 
     * @Column(type="string", size="32", nullable=true, column="opertion")
     */
    public $opertion;

    /**
     * 
     * @Column(type="string", nullable=true, column="opertion_time")
     */
    public $opertion_time;

    /**
     * 
     * @Column(type="string", size="32", nullable=true, column="currency")
     */
    public $currency;

    /**
     * 
     * @Column(type="double", size="10", nullable=true, column="order_amount")
     */
    public $order_amount;

    /**
     * 
     * @Column(type="double", size="10", nullable=true, column="shipping_amount")
     */
    public $shipping_amount;

    /**
     * 
     * @Column(type="double", size="10", nullable=true, column="discount")
     */
    public $discount;

    /**
     * 
     * @Column(type="double", size="10", nullable=true, column="product_amount")
     */
    public $product_amount;

    /**
     * 
     * @Column(type="double", size="10", nullable=true, column="account_amount")
     */
    public $account_amount;

    /**
     * 
     * @Column(type="string", size="12", nullable=true, column="order_status")
     */
    public $order_status;

    /**
     * 
     * @Column(type="string", size="12", nullable=true, column="payment_status")
     */
    public $payment_status;

    /**
     * 
     * @Column(type="string", size="12", nullable=true, column="shipping_status")
     */
    public $shipping_status;

    /**
     * 
     * @Column(type="string", size="12", nullable=true, column="is_cod")
     */
    public $is_cod;

    /**
     * 
     * @Column(type="string", size="12", nullable=true, column="is_original")
     */
    public $is_original;

    /**
     * 
     * @Column(type="string", size="120", nullable=true, column="billing_firstname")
     */
    public $billing_firstname;

    /**
     * 
     * @Column(type="string", size="120", nullable=true, column="billing_lastname")
     */
    public $billing_lastname;

    /**
     * 
     * @Column(type="string", size="120", nullable=true, column="billing_email")
     */
    public $billing_email;

    /**
     * 
     * @Column(type="string", size="120", nullable=true, column="billing_coutry")
     */
    public $billing_coutry;

    /**
     * 
     * @Column(type="string", size="120", nullable=true, column="billing_state")
     */
    public $billing_state;

    /**
     * 
     * @Column(type="string", size="120", nullable=true, column="billing_city")
     */
    public $billing_city;

    /**
     * 
     * @Column(type="string", size="120", nullable=true, column="billing_zip")
     */
    public $billing_zip;

    /**
     * 
     * @Column(type="string", size="255", nullable=true, column="billing_address")
     */
    public $billing_address;

    /**
     * 
     * @Column(type="string", nullable=true, column="remark")
     */
    public $remark;

    /**
     * 
     * @Column(type="string", nullable=true, column="check_date")
     */
    public $check_date;

    /**
     * 
     * @Column(type="string", size="12", nullable=true, column="account_date")
     */
    public $account_date;

    /**
     * 
     * @Column(type="integer", size="16", nullable=true, column="mark")
     */
    public $mark;

    /**
     * Initialize method for model.
     */
    public function initialize()
    {
        $this->setSchema("order");
    }

    /**
     * Allows to query a set of records that match the specified conditions
     *
     * @param mixed $parameters
     * @return Orders[]|Orders
     */
    public static function find($parameters = null)
    {
        return parent::find($parameters);
    }

    /**
     * Allows to query the first record that match the specified conditions
     *
     * @param mixed $parameters
     * @return Orders
     */
    public static function findFirst($parameters = null)
    {
        return parent::findFirst($parameters);
    }

}
